package com.lwp.i18n.util;

import java.util.regex.Matcher;
import java.util.regex.Pattern;

/**
 * 匹配工具类
 */
public class PatternUtils {

    /**
     * 匹配中文字符
     */
    public static final Pattern CHINESE = Pattern.compile("[\4ue00-\u9fa5]");
    /**
     * 单引号字符串
     * <p>
     *     扫描内容 attr2: " 看看3 \" ",attr2: ' 看看3 \' ',",attr2: ' 看看3 \' ', <br>
     *     '[^\n]*?[^\\]' 最少匹配（带?), 匹配1:  ' 看看3 \' ' ， 匹配2：' 看看3 \' '<br>
     *     非贪婪匹配 '[^\n]*[^\\]' ，匹配内容 （' 看看3 \' ',",attr2: ' 看看3 \' '）
     * </p>
     */
//    public static final Pattern SINGLE_QUOT = Pattern.compile("'[^\']*'");
    public static final Pattern SINGLE_QUOT = Pattern.compile("'[^\\n]*?[^\\\\]'");
    /**
     * 解析 " "的内容 ，中间不能包含 \n
     * <p>
     *     "[^\n]*?[^\\]"
     * </p>
     */
//    public static final Pattern DOUBLE_QUOT = Pattern.compile("\"[^\"]*[^\\\\]\"");
    public static final Pattern DOUBLE_QUOT = Pattern.compile("\"[^\\n]*?[^\\\\]\"");

    /**
     * 是否包含中文
     * @param str
     * @return
     */
    public static boolean containsChinese(String str) {
        Matcher matcher = CHINESE.matcher(str);
        return matcher.find();
    }

    public static void main(String[] args) {
        System.out.println("\\\\");
    }
}
